home *** CD-ROM | disk | FTP | other *** search
- on delpush newdelimiter
- global delimiterlist
- if not listp(delimiterlist) then
- set delimiterlist to []
- end if
- append(delimiterlist, the itemDelimiter)
- set the itemDelimiter to newdelimiter
- end
-
- on delpop
- global delimiterlist
- if not listp(delimiterlist) then
- set delimiterlist to []
- end if
- if count(delimiterlist) > 0 then
- set the itemDelimiter to getLast(delimiterlist)
- deleteAt(delimiterlist, count(delimiterlist))
- else
- set the itemDelimiter to ","
- end if
- end
-
- on replace basetext, oldtext, newText
- set buffer to EMPTY
- set pos to offset(oldtext, basetext)
- repeat while pos > 0
- if pos > 1 then
- set buffer to buffer & char 1 to pos - 1 of basetext & newText
- delete char 1 to pos + length(oldtext) - 1 of basetext
- else
- set buffer to buffer & newText
- delete char 1 to length(oldtext) of basetext
- end if
- set pos to offset(oldtext, basetext)
- end repeat
- set buffer to buffer & basetext
- return buffer
- end
-
- on symbol mystr
- if listp(mystr) then
- set mylist to mystr
- set endlist to [:]
- repeat with mystr in mylist
- set mystr to replace(mystr, " ", "_")
- set mysymbol to value("#" & mystr)
- addProp(endlist, mysymbol, 0)
- end repeat
- return endlist
- else
- set mystr to replace(mystr, " ", "_")
- set mysymbol to value("#" & mystr)
- return mysymbol
- end if
- end
-
- on listtotext mylist, delimiter
- set delimiter to default(the itemDelimiter, delimiter)
- set buffer to EMPTY
- repeat with entry in mylist
- set buffer to buffer & entry & delimiter
- end repeat
- set dellength to length(delimiter)
- delete char length(buffer) - dellength + 1 to length(buffer) of buffer
- return buffer
- end
-
- on texttolist mytext, delimiter
- set delimiter to default(the itemDelimiter, delimiter)
- delpush(delimiter)
- set baselist to []
- repeat with index = 1 to the number of items in mytext
- append(baselist, item index of mytext)
- end repeat
- delpop()
- return baselist
- end
-
- on safetext mytext
- set mytext to replace(mytext, QUOTE, "\'")
- set mytext to replace(mytext, numToChar(10), EMPTY)
- return mytext
- end
-
- on outsafeput mytext
- set mytext to replace(mytext, "\n", RETURN)
- set mytext to replace(mytext, "\t", TAB)
- set mytext to replace(mytext, "\'", QUOTE)
- return mytext
- end
-